/**
 * @Description: 腾讯云发送短信
 * @author longfa liang
 * @date 2021/7/15
 */
var QcloudSms = require("qcloudsms_js");
var config = require("../config/config")
// 短信应用 SDK AppID
var appid = config.sms.appid;  // SDK AppID 以1400开头
// 短信应用 SDK AppKey
var appkey = config.sms.appkey;
// 签名
var smsSign = config.sms.smsSign;  // NOTE: 签名参数使用的是`签名内容`，而不是`签名ID`。这里的签名"腾讯云"只是示例，真实的签名需要在短信控制台申请
var qcloudsms = QcloudSms(appid, appkey);

class sms {

    /**
     *
     * @param phoneNumber 手机号 数组
     * @param templateId  模板ID
     * @param code  验证码
     * @returns {Promise<any>}
     */
    sendCode(phoneNumber, templateId, code) {
        return new Promise((r, e) => {
            var ssender = qcloudsms.SmsSingleSender();
            console.log(phoneNumber, templateId, code, smsSign)
            ssender.sendWithParam("86", phoneNumber, templateId, code, smsSign, "", "", (err, res, resData) => {
                if (err) {
                    r(err)
                    console.log("err: ", err);
                } else {

                    if (resData.result == 0) {
                        r(true)
                    } else {
                        r(resData.errmsg)
                    }
                    console.log("发送短信验证码请求参数: ", JSON.stringify(res.req));
                    console.log("发送短信验证码返回结果: ", JSON.stringify(resData));

                }
            });

        })
    }
}

module.exports = new sms()